body {
  /*  font-family: "Helvetica Neue", "Luxi Sans", "DejaVu Sans", Tahoma, "STHeiti", "黑体", "Microsoft YaHei", serif;*/
  font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Tahoma, sans-serif;
  /* http://www.awayback.com/revised-font-stack/ */
  /*  font-family: Baskerville, Garamond, Palatino, "Palatino Linotype", "Hoefler Text", "Times New Roman", serif;*/
  text-align: justify;
  line-height:1.7;
}
form p {
  margin: 0.5em 0;
}
.center-align {
  text-align: center;
}
.hint {
  font-size: 0.8em;
  color: #999;
}
.invisiable {
  display: none !important;
}
.messages li {
  margin: 0.5em auto;
  padding: 0.5em 1em;
  font-size: 1.1em;
  font-weight: bold;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
}
.messages .success {
  background:#E6EFC2;
  color:#264409;
  border-color:#C6D880;
}
.messages .error {
  background:#FBE3E4;
  color:#8a1f11;
  border-color:#FBC2C4;
}
.messages .info {
  background:#FFF6BF;
  color:#514721;
  border-color:#FFD324;
}
.messages .success {
  background:#E6EFC2;
  color:#264409;
  border-color:#C6D880;
}
.messages .error a {
  color:#8a1f11;
}
.messages .info a {
  color:#514721;
}
.messages .success a {
  color:#264409;
}
/* pagination */
.pagination {
  margin: 1em 0;
  padding-top: 1em 0;
}
.pagination .prev {
  padding-right: 1em;
}
.pagination .next {
  padding-left: 1em;
}
.pagination a:link,
.pagination a:visited {
  color: black;
}
/* may be commons */
.wide p {
  margin: 0.75em 0;
}

.narrow label {
  display: inline-block;
  text-align: right;
  width: 4em;
}

.wide label {
  display: inline-block;
  text-align: left;
  width: 8em;
}

.narrow input[type='submit'] {
  margin-left: 4em;
}

.wide input[type='submit'] {
  margin-left: 8em;
}

form .hint {
  display: block;
  margin-left: 5.2em;
}

.narrow a,
.wide a {
  text-decoration: underline;
}

.narrow .errorlist,
.wide .errorlist {
  color: #CC0000;
  margin-left: 4.1em;
  list-style: disc;
}

/* login styles */
#login,
#signup,
#change-password,
#verification-sent {
  background: url(../images/logo_300.png) transparent left top no-repeat;
  margin: 10em auto;
  padding-left: 310px;
  width: 25em;
}

#login form {
/*  border-left: #aaa 1px solid;*/
}

#signup-guide {
  font-size: 1.1em;
  margin-top: 2em;
  margin-left: -310px;
}

#signup-guide ul {
  margin-left: 2em;
  margin-top: 1em;
}

#signup-guide li {
  list-style: disc;
}

#verification-sent {
  min-height: 8em;
}

.gutter {
  padding: 12px 0;
}

#logo {
  margin: 0;
}

#toolbar li {
  display: inline;
}

.navigator-wrap {
  background-color: #999;
  border-top:1px solid #909090;
  border-bottom:1px solid #888;
  padding: 0.3em 0;
}

.main-navigator {
  margin: 0;
}

  .main-navigator li{
    float: left;
    margin: 0.15em 2.5em 0.15em 0;
  }

  .main-navigator a {
    color: #333;
    display: block;
    padding: 0.1em 1.2em 0.2em;
    font-weight: bold;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    text-shadow: 0 1px 1px #CCCCCC;
    text-decoration:none;
  }

    .main-navigator a.active {
      color: white;
      background-color: #555;
      text-shadow: 0 1px 1px #333;
    }
    .main-navigator a:hover {
      color: white;
      background-color: #777;
      text-decoration:none;
      text-shadow: 0 1px 1px #333;
    }

.whats-open-party {
  padding: 12px 0 0 0;
/*  border-top: 1px solid white;
  background: -webkit-gradient(linear, left top, left bottom, from(#dddede), to(#f8f8f8));
  background: -moz-linear-gradient(-90deg, #dddede, #f8f8f8);
*/
}
.whats-open-party h2,
.whats-open-party p {
  display: inline;
  font-family: "STKaiti", "楷体", "Kai", "Kaiti";
  font-size: 18px;
  padding: 0.25em 0;
  font-weight: normal;
  color: #666;
}
.whats-open-party p {
  margin: 0;
}
.whats-open-party strong {
  font-weight: normal;
  color: black;
}
.content h2 {
  margin: 12px 0 0 0 ;
  font-size: 14px;
  font-weight: bold;
  color: #15355F;
  border-bottom: 2px solid #f5f5f5;
}
.content p {
  margin: 1em 0;
}
.event-poster {
  margin: 10px 0;
  width: 460px;
  height: 551px; /*320px;*/
  -webkit-box-shadow: 6px 6px 6px #ccccc5;
  -moz-box-shadow: 6px 6px 6px #ccccc5;
}
.event-poster img {
  display: none;
}
.shadow {
  -webkit-box-shadow: 6px 6px 6px #ccccc5;
  -moz-box-shadow: 6px 6px 6px #ccccc5;
}
dl.flat {
  display: inline;
  margin: 12px 0;
}
.flat dt,
.flat dd {
  display: inline;
}
.flat dd {
  padding-right: 12px;
}
dl.pair {
  margin: 12px 0;
}
.pair dt,
.pair dd {
  float: left;
}
.pair dt {
  clear: left;
}
.pair dd {
  padding-right: 12px;
}
.join-us ul {
  margin: 0 0 20px 0;
  font-size: 16px;
  font-weight: bold;
  text-shadow:0 -1px rgba(0, 0, 0, 0.1);
  color: rgb(66, 147, 195);
}
.join-us a:link,
.join-us a:visited {
  color: rgb(66, 147, 195);
  text-decoration: underline;
}
.join-us .hot a:link,
.join-us .hot a:visited {
  background-color: #777;
  color: white;
  padding: 0.25em 0.75em;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
  text-shadow: 1px 1px #333;
  text-decoration: none;
  -webkit-box-shadow: 4px 4px 6px #ccccc5;
  -moz-box-shadow: 4px 4px 6px #ccccc5;
  box-shadow: 4px 4px 6px #ccccc5;
}
.join-us .hot a:hover,
.join-us .hot a:active {
  background-color: #666;
  -webkit-box-shadow: 6px 6px 6px #ccccc5;
  -moz-box-shadow: 6px 6px 6px #ccccc5;
  box-shadow: 6px 6px 6px #ccccc5;
}
.join-us .inactive a:link,
.join-us .inactive a:visited {
  text-decoration: none;
  color: #aaa;
}
.join-us strong {
  color: red;
}
.join-us .hot {
  font-size: 28px;
  margin: 0.5em 0 0.5em -5px;
}
.top-sponsors {
  text-align: left;
}
  .top-sponsors li {
    display: inline;
    padding: 0.25em 0.5em 0.25em 0;
    font-size: 22px;
    font-weight: bold;
    letter-spacing:-0.02em;
    text-shadow:0 -1px rgba(0, 0, 0, 0.3);
  }
  .top-sponsors a:link,
  .top-sponsors a:visited {
    color: black;
  }
#footer {
  margin-top: 3em;
  font-size: 11px;
}
  #footer p {
    text-align: center;
  }
  #footer a:link,
  #footer a:visited {
    text-decoration: underline;
    color: black;
  }
  #footer .links {
    text-align: center;
  }
    #footer .links li {
      display: inline;
      padding: 0 1em;
    }
#debug {
  font-family: Monaco, Consolas;
  font-size: 10px;
}
  #debug td {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
/*.entries*/
  .entries a:link,
  .entries a:visited {
    color: #15355F;
  }
  .entries h4 {
    color: #15355F;
    font-size: 13px;
    font-weight: bold;
    margin: 12px 0px 0px;
  }
  .entries p {
    text-align: justify;
    line-height: 2;
    margin: 0;
    color: #333;
  }
  .entries a:link.more,
  .entries a:visited.more {
    color: #999;
    text-decoration: underline;
  }
.users dl {
  float: left;
  width: 76px;
  margin: 10px 0;
  text-align: center;
}
  .users dt {
    display: block;
    height: 30px;
    text-align: center;
    overflow: hidden;
  }
  .users dt {
    display: block;
    height: 56px;
    text-align: center;
    overflow: hidden;
  }
  .users dt img {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
  }

.textile h1 {
  font-size: 16px;
  border-bottom: 1px solid #ddd;
}
.textile h2,
.textile h3 {
  font-size: 14px;
}
.textile .section {
  margin-bottom: 2em;
}

.tweets li, 
.comments li {
  min-height: 48px;
  padding: 8px 0 8px 56px;
  position: relative;
  border-bottom: 1px dotted #D2DADA !important;
}
.tweets .avatar,
.comments .avatar {
  display: block;
  position: absolute;
  left: 0;
  width: 56px;
}
.tweets .source {
  color: #999;
  display: block;
}

.comments .timesince{
  color: #999;
}

.comments .comment {
  color: black;
  display: block;
  padding: 8px 0 0 16px;
}

.bread-crumb {
  margin: 1em 0 0.5em 0!important;
}
  .bread-crumb a:link,
  .bread-crumb a:visited {
    color: #777;
    text-decoration: none;
    border-bottom: 1px solid #999;
  }

.topic {
  
}
  .topics .topic {
    margin: 0.5em 0 1em 0;
    padding-bottom: 1em;
  }
  .topic .topic-name {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    font-size: 20px;
    font-weight: bold;
    padding: 0.5em 1em;
    margin: 0.5em 0;
    display: inline-block;
    position: relative;
  }
    .topics .topic .topic-name {
      font-size: 15px !important;
    }
      .topics .topic .topic-name a {
        background-image: url(../images/bullet_go.png);
        background-position: right center;
        background-repeat: no-repeat;
        padding-right: 18px;
      }
    .topic .topic-name_0 {
      background: #e6d870;
      color: #3f4305;
    }
      .topic .topic-name_0 a:link,
      .topic .topic-name_0 a:visited {
        color: #3f4305;
      }
    .topic .topic-name_1 {
      background: #a5c8eb;
      color: #27456e;
    }
      .topic .topic-name_1 a:link,
      .topic .topic-name_1 a:visited {
        color: #27456e;
      }
    .topic .topic-name_2 {
      background: #b3dd6a;
      color: #345a00;
    }
      .topic .topic-name_2 a:link,
      .topic .topic-name_2 a:visited {
        color: #345a00;
      }
    .topic .topic-name_3 {
      background: #d19f7d;
      color: #491e1e;
    }
      .topic .topic-name_3 a:link,
      .topic .topic-name_3 a:visited {
        color: #491e1e;
      }
  .topic .topic-name .upcoming {
    font-size: 12px;
    font-style: italic;
    color: #333;
    padding-left: 1em;
  }
  .topic .topic-name .tail {
    background-image: url(../images/popup_tails.gif);
    background-repeat: no-repeat;
    position: absolute;
    width: 25px;
    height: 24px;
    bottom: -24px;
    left: 15px;
  }
    .topic .topic-name_0 .tail {
      background-position: -75px top;
      
    }
    .topic .topic-name_1 .tail {
      background-position: -50px top;
    }
    .topic .topic-name_2 .tail {
      background-position: -25px top;
    }
    .topic .topic-name_3 .tail {
      background-position: left top;
    }
  .topic .meta {
    color: #999;
    margin-left: 1.6em !important;
  }
    .topics .topic .meta {
      margin-top: 0.25em !important;
      margin-bottom: 0.25em !important;
      margin-left: 4em !important;
    }
    .topic .meta a:link,
    .topic .meta a:visited {
      color: #999;
    }
  .topic .poll {
    display: block;
    float: right;
    background-color: #555;
/*    background: #fff url(../images/gradient_top.png) repeat-x left top;*/
    color: #eee;
    margin: 1em;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
  }
  .topic .poll dt {
    display: none;
  }
  .topic .poll dd {
    margin: 10px;
  }
    .topic .poll .poll-status {
      color: #999;
      font-size: 12px;
    }
    .topic .poll .unit {
      font-size: 12px;
      color: #999;
      padding-left: 0.2em;
    }
    .topic .poll dt.visiable {
      display: block;
    }
    .topic .poll .vote-actions {
      margin: 0;
    }
  .topic .poll .votes {
    text-align: center;
    margin: -1em 0 0 1em;
  }
    .topic .poll .votes .number {
      font-family: monaco, verdana;
      color: #eee;
      font-size: 35px;
    }
    .topic .poll a.vote:link,
    .topic .poll a.vote:visited {
      color: white;
      display: block;
      background: #777 url(../images/thumb_up.png) 1.5em center no-repeat;
      padding: 0.5em 1em 0.5em 3em;
      font-weight: bold;
      -moz-border-radius-topleft: 0;
      -webkit-border-top-left-radius: 0;
      -moz-border-radius-topright: 0;
      -webkit-border-top-right-radius: 0;
      -moz-border-radius-bottomleft: 15px;
      -webkit-border-bottom-left-radius: 15px;
      -moz-border-radius-bottomright: 15px;
      -webkit-border-bottom-right-radius: 15px;
      border-radius: 0 0 15px 15px;
    }
    .topic .poll a.vote:hover,
    .topic .poll a.vote:active {
      background-color: #ccc;
      color: #000;
      text-decoration: none;
      -moz-box-shadow: 3px 5px 5px #888;
    }
  .topic .poll .voted {
    background: url(../images/medal_bronze_3.png) left center no-repeat;
    padding-left: 20px;
    margin: 5px 10px;
    display: block;
  }
  .topic .poll .who-voted {
    padding-top: 0.5em;
    font-size: 12px;
    color:#999;
    position: absolute;
  }
  .topic .description {
    padding-left: 1em;
    border-left: 5px solid #eee;
    margin-top: -0.25em;
  }

.event {
  margin-bottom: 2em;
}
    .event .component-title {
      font-size: 20px;
      color: #15355F;
      margin: 10px 0 15px 0;
      border-bottom: 5px solid #eee;
    }
  .event .event-name {
    font-size: 25px;
    margin: 10px 0 15px 0;
    border-bottom: 5px solid #eee;
  }
    .event .event-name a:link,
    .event .event-name a:visited {
      color: #15355F;
      font-weight: bold;
      padding-bottom: 5px;
    }
  .next-event h2 {/* for index page */
    border-bottom: none;
  }
  .event .event-status {
    color: #999;
    font-size: 13px;
    font-weight: normal;
    vertical-align: bottom;
    line-height: 32px;
    padding-left: 1em;
  }
  .event .meta {
    margin: 1em 0;
  }
    .event .meta dt,
    .event .meta dd {
      display: inline;
    }
    .event .meta dt {
      -moz-border-radius: 10px 0 0 10px;
      -webkit-border-radius: 10px 0 0 10px;
      border-radius: 10px 0 0 10px;
      background-color: #ccc;
      text-shadow: 0 1px 1px #fff;
      color: black;
      padding: 0.4em 0.5em 0.4em 1em;
    }
    .event .meta dd {
      -moz-border-radius: 0 10px 10px 0;
      -webkit-border-radius: 0 10px 10px 0;
      border-radius: 0 10px 10px 0;
      background-color: #777;
      color: white;
      text-shadow: 0 1px 1px #000;
      padding: 0.4em 1em 0.4em 0.5em;
      margin-right: 0.5em;
    }
    .next-event .meta {
      margin: 0.5em 0;
    }
      .next-event .meta dt,
      .next-event .meta dd {
        background-color: transparent;
        color: black;
        text-shadow: none;
        padding: 0;
        display: inline;
      }
      .next-event .meta dt {
        color: #666;
      }
  .event .poster {
    margin: 2em 0 !important;
  }
    .event .poster img {
      -webkit-box-shadow: 5px 8px 8px #ccccc5;
      -moz-box-shadow: 5px 8px 8px #ccccc5;
    }
  .event .event-topics {
    margin-left: 1em;
    padding-left: 1em;
    border-left: 5px solid #eee;
  }
    .event .event-topics h3 {
      font-size: 15px;
      font-weight: bold;
      color: #555;
      margin: 0.5em 0 0 0;
    }
    .event .event-topics li {
      display: inline;
    }
    .event .event-topics .topic-name {
      font-size: 13px !important;
      font-weight: normal;
      padding: 0.25em 1em;
    }
#event-checkin {
  color: #666;
}
  #event-checkin h2 {
    font-size: 35px;
    color: #666;
    border: none;
  }
  #event-checkin p {
    margin-left: 15px;
  }
  #event-checkin label {
    font-size: 20px;
    display: block;
    width: auto;
  }
  #event-checkin input {
    font-family: Baskerville, Garamond, Palatino, "Palatino Linotype", "Hoefler Text", "Times New Roman", serif;
    font-weight: bold;
    color: black;
    font-size: 45px;
  }
.post,
.posts {}
  .post-title {
    color: #999;
  }
  .post .post-title {
    font-size: 20px;
    font-weight: bold;
    border: none;
  }
  .posts .post .post-title {
    font-size: 14px;
    font-weight: normal;
  }
    .post .post-title a:link,
    .post .post-title a:visited {
      color: #27456E;
      margin: 0.5em 0;
    }
    .posts .post-title a:link,
    .posts .post-title a:visited {
      color: #27456E;
    }
  .post .meta {
    color: #999;
  }
    .post .created-by,
    .post .guid,
    .post .author,
    .post .modified-at,
    .post .comment-count {
      display: none;
    }
  .posts .meta {
    font-size: 12px;
  }
    .posts span.meta:before {
      content: '(';
    }
    .posts span.meta:after {
      content: ')';
    }
